Wireless networks have become increasingly popular, as computers and other devices can be coupled for data communications without requiring wired connections between the network nodes. One set of standards for wireless networks is the IEEE 802.11 standards, but other wireless standards or protocols might be used instead. Because wireless networks are expected to operate in unfavorable conditions, such as in the presence of reflections, interference, movement of receivers/transmitters, etc., much effort is needed to correctly transmit and receive data over a wireless channel.
A typical node in a wireless network (referred to in the standards as a “station”) includes a receive chain and a transmit chain. A transmit chain typically includes some digital processing and analog, RF circuitry that causes a signal to be transmitted into the wireless channel. A receive chain typically includes one or more antenna, RF and analog circuitry, and digital processing that seeks to output a data stream that represents what the sending transmit chain received as its input and transmitted into the wireless network. In some cases, a receiver uses multiple antennas to improve reception of the signal from a sending transmit chain.
Because of the expected conditions, the receive chain includes various components designed to ensure that signals can be largely recovered correctly. Several techniques have been in use to recover signals.
One technique is the use of a minimum distance receiver (MDR). An MDR uses an estimate of the channel response and knowledge of all of the possible transmitted signals.
The MDR compares a received signal with each of the possible transmitted signals (after the channel response is applied to those possible transmitted signals). Some MDRs might not examine each possible transmitted signal, if they have a mechanism for ignoring clearly unlikely ones of the possible transmitted signals, but generally the complexity of the search relates to the number of possible transmitted signals. A minimum distance receiver gets its name from the idea that a “distance”, such as a Euclidean distance, can be calculated between the received signal and a possible transmitted signal adjusted by the channel response. The possible transmitted signal (or signals) that result in the minimum distance is judged to be what was sent. It has been shown that a minimum distance receiver (“MDR”) achieves the lowest error probability in the presence of Gaussian noise, which is a widely accepted noise model.
In normal operation of a wireless system, multiple symbols are transmitted through a wireless channel successively. Channel distortion causes the time extent of the symbol to increase, so that energy from one symbol spills into the time window for another symbol, smearing the symbols together. This effect is referred to as inter-symbol interference (“ISI”).
In the case in which one isolated symbol is transmitted (so that no ISI is will occur), the MDR selects as the presumed transmitted symbol the symbol that satisfies Equation 1, where r is the received signal, C is the channel response and {sk} is the set of possible transmitted symbols.
                              min          k                ⁢                                                        r              -                              Cs                k                                                          2                                    (                  Equ          .                                          ⁢          1                )            
Of course, symbols are typically not transmitted in isolation. In general, multiple symbols are transmitted in succession, which is referred to herein as a “sequence”. A typical sequence in a wireless system might be a complete set of symbols that make up a packet according to protocols used in the wireless channel, but a sequence need not be an entire packet or a single packet. With multiple symbols, inter-symbol interference can be expected. However, the sequence boundaries are typically such that an MDR can assume that there is no inter-sequence interference and the MDR can operate on the sequence.
Thus, where ISI is present, the MDR operates over a sequence rather than being able to deal with single symbols ignoring all other symbols. This means that it might not be sufficient to treat each symbol in isolation, but instead the MDR needs to determine what sequence was sent among all possible sequences. To do so, the MDR finds the sequence of symbols that satisfies a similar condition as in the case where only a single symbol is relevant. An example of such a condition is shown in Equation 2, in which r is the received signal, h is the channel response and {pk} is the set of all possible sequences.
                              min                      p            k                          ⁢                                                        r              -                              h                *                                  p                  k                                                                          2                                    (                  Equ          .                                          ⁢          2                )            
As illustrated by Equation 2, the complexity of the MDR can be expected to grow exponentially with the length of the sequence. Even efficient approaches for implementing the MDR, such as using a Viterbi algorithm, may prove to be too complex to implement, given likely receiver constraints on time, computing power, and power consumption.
In many modulation schemes, the input data is mapped to symbols that comprise multiple signal samples. Examples of this are block codes, in particular, complimentary code keying (“CCK”) codes and Barker codes. For example, a CCK symbol comprises eight quadrature phase shift keying (“QPSK”) encoded “chips”. The channel distortion might smear the boundaries between chips within a symbol. This latter effect is referred to as inter-chip interference (“ICI”).
An MDR can operate on a symbol to compensate for ICI, but selecting the symbol among the possible transmitted symbols that minimizes the distance between a group of received samples (e.g., chips) taking into account the estimated channel response due to that symbol. Such an MDR is referred to herein as a Symbol-by-Symbol Minimum Distance Receiver (SbS MDR). For many sequences of symbols, an SbS MDR is easier to implement than an MDR that compares over all possible sequences, however while an SbS MDR compensates for smearing within a symbol, it ignores interference between symbols (ISI).
Another technique for IS compensation is the decision feedback equalizer (“DFE”). With a DFE, the determination of a current symbol being detected takes into account the results of detecting previous symbols. In effect, once it is assumed what the previous symbols were, assumed interference is calculated for those previously detected symbols and is subtracted from the received signal representing the current symbol prior to a symbol decision on the current symbol. Once that interference contribution is subtracted, the remainder is used as the basis for a minimum distance calculation, symbol by symbol.
The energy from interfering symbols that have not yet been determined when a decision is being made on a current symbol is referred to as pre-cursor ISI energy (those undetermined symbols are “behind” the cursor “pointing” to the current symbol being determined). Since a DFE relies on the determination of the previous symbols, it can do well in removing from a current symbol the ISI from those previous symbols, but cannot do well in removing the energy from pre-cursor symbols, as those symbols are not yet known.
Thus, if most of the ISI is from previous symbols, then the DFE removes most of the ISI. Whether the ISI is primarily from the previous symbols depends on which samples are used to make a symbol decision. For finite extent channels, there are always samples that contain little ISI from a given symbol. In general, these samples may also contain little energy from the current symbol, so this presents a trade-off in that the set of signal samples that minimizes ISI from subsequent symbols might not be the most optimal set of signal samples in terms of signal-to-noise ratio (“SNR”) for the current symbol determination. This might be due to the set of signal samples having only a small amount of energy contributed for the current symbol.
A DFE works best when the pre-cursor ISI energy is lower. One approach to dealing with ISI is to use an SbS MDR and a DFE applied to the output of a channel matched filter. This combination gives rise to a significant reduction in complexity relative to an MDR that operates sequence-by-sequence, however, it is often the case that this does not provide the highest SNR for the current symbol and lowest amount of pre-cursor ISI energy.
Additional improvements might be needed under adverse conditions.